

#ifndef __ATK_MS53L0_H
#define __ATK_MS53L0_H

#include "./SYSTEM/sys/sys.h"
#include "vl53l0x_api.h"

/* 信号引脚定义 */
#define ATK_MS53L0_XSH_GPIO_PORT            GPIOB        /* XSH引脚GPIO端口 */
#define ATK_MS53L0_XSH_GPIO_PIN             GPIO_PIN_2   /* XSH引脚编号 */
#define ATK_MS53L0_XSH_GPIO_CLK_ENABLE()    do{ __HAL_RCC_GPIOC_CLK_ENABLE(); }while(0) /* 使能XSH引脚时钟 */

/* IO操作宏 */
#define ATK_MS53L0_XSH(x)                   do{ x ?                                                                                     \
                                                HAL_GPIO_WritePin(ATK_MS53L0_XSH_GPIO_PORT, ATK_MS53L0_XSH_GPIO_PIN, GPIO_PIN_SET) :    \
                                                HAL_GPIO_WritePin(ATK_MS53L0_XSH_GPIO_PORT, ATK_MS53L0_XSH_GPIO_PIN, GPIO_PIN_RESET);   \
                                            }while(0)  /* 设置XSH引脚高低电平 */

/* ATK-MS53L0模块上的默认IIC通信地址 */
#define ATK_MS53L0_IIC_ADDR                 0x29

/* ATK-MS53L0模块ID */
#define ATK_MS53L0_MODULE_ID                0xEEAA

/* 函数声明 */
void atk_ms53l0_hw_init(void);  /* ATK-MS53L0模块硬件初始化函数 */

#endif
